Types for DSP Assembler Pro- grams

نویسنده

  • Ken Friis Larsen
چکیده

In this dissertation I present my thesis: A high-level type system is a good aid for developing signal processing programs in handwritten Digital Signal Processor (DSP) assembler code. The problem behind the thesis is that it if often necessary to programing software for embedded systems in assembler language. However, programming in assembler causes numerous problems, such as memory corruption, for instance. To test the thesis I define a model assembler language called Featherweight DSP which captures some of the essential features of a real custom DSP used in the industrial partner’s digital hearing aids. I present a baseline type system which is the type system of DTAL adapted to Featherweight DSP. I then explain two classes of programs that uncovers some shortcomings of the baseline type systesm. The classes of problematic programs are exemplified by a procedure that initialises an array for reuse, and a procedure that computes point-wise vector multiplication. The latter uses a common idiom of prefetching memory resulting in out-of-bounds reading from memory. I present two extensions to the baseline type system: The first extension is a simple modification of some type rules to allow out-ofbounds reading from memory. The second extension is based on two major modifications of the baseline type system: • Abandoning the type-invariance principle of memory locations and using a variation of alias types instead. • Introducing aggregate types, making it possible to have different views of a block of memory, thus enabling type checking of programs that directly manage and reuse memory. I show that both the baseline type system and the extended type system can be used to give type annotations to handwritten DSP assembler code, and that these annotations precisely and succinctly describe the requirements of a procedure. I implement a proof-of-concept type checker for both the baseline type system and the extensions. I get good performance results on a small benchmark suite of programs representative of handwritten DSP assembler code. These empirical results are encouraging and strongly suggest that it is possible to build a robust implementation of the type checker which is fast enough to be called every time the compiler is called, and thus can be an integrated part of the development process.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Optimization of FIR filter implementation for FMT on VLIW DSP

The paper summarizes the FMT modulation prototype filter design and its efficient implementation on DSP. The optimum design of algorithms for digital signal processors with VLIW architecture is described. Using this new approach it was, for example, possible to optimize compilation from the C language into the assembler of TMS320C6414 digital signal processor for implementation of FMT modulatio...

متن کامل

Studying Digital Signal Processing on Arduino Based Platform

Digital Signal Processing (DSP) has become today an integral part of the basic skills required for scientists and engineers of many specialties. Most courses offer only using for DSP laboratory classes the Matlab system. This approach has the disadvantage – it excludes the students’ acquisition of the basic skills of software development for implementation of DSP algorithms based on real digita...

متن کامل

A general DSP processor at the cost of 23K gates and 1/2 a man-year design time

This paper describes the design and implementation of a 16bit fixed point DSP processor. The processor is intended as a platform for hardware accelerators and allows additional computational units and assembler instructions to be added. The I/O facilities can also be customized to the needs of a specific application. Benchmarking has shown that the processor, without any hardware accelerators, ...

متن کامل

Object oriented software design for the Mt. Wilson 100-inch Hooker telescope adaptive optics system

The object oriented software design paradigm has been instrumental in the development of the Adoptics software used in the Hooker telescope’s ADOPT adaptive optics system 2, . The software runs on a Pentium-class PC host and eight DSP processors connected to the host’s motherboard bus. C++ classes were created to implement most of the host software’s functionality, with the object oriented feat...

متن کامل

A Graphical Compiler for the Programming of Dsp in a Completely Symbolic Way

The CADiSP system is an experimental software development environment for digital signal processing. It has been designed in an attempt to provide an engineering oriented tool for the development of algorithms and efficient code generation for DSP applications. Following the rules of modern software engineering it supports object oriented techniques and symbolic programming. This paper discusse...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2003